perm filename DIPRUN.SAI[PUZ,HPM] blob sn#164159 filedate 1975-06-18 generic text, type C, neo UTF8
COMMENT ⊗   VALID 00002 PAGES
C REC  PAGE   DESCRIPTION
C00001 00001
C00002 00002	BEGIN "DIPRUN"
C00012 ENDMK
C⊗;
BEGIN "DIPRUN"
INTEGER I,J,K,L,M,N,O,CNT,BRK,EOF,FLG,BRK1,EOF1,FLG1;
STRING WORD; INTEGER WLEN,FL,FLA; BOOLEAN ANS;

PRELOAD_WITH "EGOISTIC","SUSPENSE","LUNCHEON","THOUSAND","OVERHANG";
STRING ARRAY INIW[1:5];
PRELOAD_WITH 3,5,4,6,5,4,6,3;
INTEGER ARRAY WLNS[1:8];
BOOLEAN ARRAY WFG["A":"Z",3:6];

FOR I←"A" STEP 1 UNTIL "Z" DO FOR J←3 STEP 1 UNTIL 6 DO WFG[I,J]←FALSE;

FOR I←1 STEP 1 UNTIL 5 DO FOR J←1 STEP 1 UNTIL 8 DO
         WFG[INIW[I][J TO J],WLNS[J]]←TRUE;

FOR FL←"A" STEP 1 UNTIL "Z" DO
FOR WLEN←3 STEP 1 UNTIL 6 DO
IF WFG[FL,WLEN] THEN
   BEGIN
   OUTSTR('15&'12&'12&"DOING TOP."&FL&CVS(WLEN)&'15&'12);
   OPEN(1,"DSK",0,2,0,30,BRK,EOF);
   LOOKUP(1,"TOP."&FL&CVS(WLEN),FLG);
   SETBREAK(1,'12," "&'15&'13&'14,"INS");
   OPEN(2,"DSK",0,0,2,30,BRK1,EOF1);
   ENTER(2,"BEST."&FL&CVS(WLEN),FLG1);

   ANS←FALSE;

   WHILE ¬EOF DO
      BEGIN
      WORD←INPUT(1,1);
      IF ¬ANS THEN
        BEGIN
        OUTSTR(WORD&"?");
        ANS←(INCHWL LAND '137)="Y";
        END;
      IF LENGTH(WORD)=WLEN∧WORD=FL∧ANS THEN OUT(2,WORD&'15&'12);
      END;

   CLOSE(2);
   CLOSE(1);
   OUTSTR(" DONE"&'15&'12);
   END;

END;